
#ifndef _APP_K_H
#define _APP_K_H


/*********************************************************************************************************
** 											MACRO DEF
*********************************************************************************************************/

#define  K_DATA_AVAILABLE_TIME_CONST		10

#define  MAX_K_REQ_MSG_LEN      (16)
#define  MAX_K_RSP_MSG_LEN      (256)

#define  MAX_K_MSG_COUNT        (4)

#define  K_REQ_MSG_MASK         0xF
#define  K_RSP_MSG_MASK         0xF

#define  ZS_K0 					0
/*********************************************************************************************************
** 											ENUM&STRUCT
*********************************************************************************************************/

/*k line init mode enum*/
typedef enum
{
    K_NONE = 0,
    K14230_FSAT,
    K14230_5BAUD,
    K9141_5BAUD,
} KInitModeEnum;
/*k line init mode enum*/

/*k init info struct*/
typedef struct
{
	U8	k_req_data_count;
    U8  mode;
    U8  frameLen;                   //hex len
    U8  frame[MAX_K_REQ_MSG_LEN];   //hex
} KInitInfoStruct;
/*k init info struct*/


/*k status struct*/
typedef struct
{
    U8  reqMsgMask;
    U8  rspMsgMask;
} KStatusStruct;
/*k status struct*/

/*k line requst message struct*/
typedef struct
{
    U8  msgNum;
    U8  msgLen;                     //hex len
    U8  msgBuff[MAX_K_REQ_MSG_LEN]; //hex
} KReqMsgStruct;
/*k line requst message struct*/

/*k line rspond message struct*/
typedef struct
{
    U8  msgNum;
    U8  msgLen;                     //hex len
    U8  msgBuff[MAX_K_RSP_MSG_LEN]; //hex
} KRspMsgStruct;

/*********************************************************************************************************
**											GLOBAL VAR
*********************************************************************************************************/

/*********************************************************************************************************
**											LOCAL VAR
*********************************************************************************************************/

/*********************************************************************************************************
** 											FUNCTIONS
*********************************************************************************************************/
void    K_VarInit(void);
BOOL	K_LineIsEnable(void);
    
void	K_UartRecvHandle(void);

void    K_TestHandle(void);

BOOL    KLine_DataAvailable(void);

void	K14230_Module_FSM(void);

#endif
/*********************************************************************************************************
End Of File
*********************************************************************************************************/






